package com.ly.system.system.bean.vo;

import com.ly.common.core.bean.vo.SysButtonVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 系统菜单/权限-vo
 *
 * @author luoyun
 * @Date: 2025/5/14 15:55
 * @Note:
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Schema(description = "响应信息主体")
public class SysPermissionVO {

    /**
     * 菜单
     */
    @Schema(description = "菜单")
    private List<MenuVO> menu;
    /**
     * 拥有的功能权限
     */
    @Schema(description = "拥有的功能权限")
    private List<SysButtonVO> button;
    /**
     * 拥有的功能权限字符串集合
     */
    @Schema(description = "拥有的功能权限字符串集合")
    private List<String> buttonCodeList;
    /**
     * 全部权限
     */
    @Schema(description = "全部权限")
    private List<SysButtonVO> allButton;
    /**
     * 数据源安全模式
     */
    @Schema(description = "数据源安全模式")
    private Boolean sysSafeMode;
}
